﻿using CTS.Com.Domain.Helper;
using CTS.Com.Domain.Model;
using CTS.Data.Domain.Dao;
using CTS.W._150101.Models.Domain.Common.Dao;
using CTS.W._150101.Models.Domain.Model.Admin.Master.Photos.List;
using CTS.W._150101.Models.Domain.Object.Admin.Photos;

namespace CTS.W._150101.Models.Domain.Dao.Admin
{
    /// <summary>
    /// MasterPhotosListDao
    /// </summary>
    public class MasterPhotosListDao : GenericDao<EntitiesDataContext>
    {
        // Định nghĩa hằng file sql
        public const string MASTERPHOTOSLISTDAO_GETPAGERDATA_SQL = "MasterPhotosListDao_GetPagerData.sql";

        /// <summary>
        /// Lấy đối tượng pager
        /// </summary>
        public PagerInfoModel<PhotoObject> GetPagerData(FilterDataModel inputObject)
        {
            // Tạo tham số
            var param = new {
                PhotoCd = inputObject.PhotoCd,
                PhotoName = inputObject.PhotoName,
                DeleteFlag = inputObject.DeleteFlag
            };
            // Tạo đối tượng pager
            var pagerInfo = new PagerInfoModel<PhotoObject>();
            // Sao chép thông tin pager
            DataHelper.CopyPagerInfo(inputObject, pagerInfo);
            // Gán tham số
            pagerInfo.Critial = param;
            // Kết quả trả về
            return GetPagerByFile<PhotoObject>(MASTERPHOTOSLISTDAO_GETPAGERDATA_SQL, pagerInfo);
        }
    }
}
